<template>
  <div class="todo-footer">
    <label>
      <!-- 当页面表达式比较复杂，使用计算属性优化 -->
      <!-- <input type="checkbox" :checked="isDoneNum === total && total" /> -->
      <!-- <input type="checkbox" :checked="isCheckAll" @change="handleChange" /> -->
      <input type="checkbox" v-model="isCheckAll" />
    </label>
    <span>
      <span>已完成 {{ isDoneNum }}</span> / 全部 {{ total }}
    </span>
    <button class="btn btn-danger">清除已完成任务</button>
  </div>
</template>

<script>
export default {
  name: "TodoFooter",
  props: {
    isDoneNum: {
      type: Number,
      required: true,
    },
    total: {
      type: Number,
      required: true,
    },
    updateAllTodoIsDone: {
      type: Function,
      required: true,
    },
  },
  computed: {
    // isCheckAll() {
    //   return this.isDoneNum === this.total && this.total;
    // },
    isCheckAll: {
      get() {
        return this.isDoneNum === this.total && this.total;
      },
      set(val) {
        this.updateAllTodoIsDone(val);
      },
    },
  },
  // methods: {
  //   handleChange(e) {
  //     this.updateAllTodoIsDone(e.target.checked);
  //   },
  // },
};
</script>

<style>
/*footer*/
.todo-footer {
  height: 40px;
  line-height: 40px;
  padding-left: 6px;
  margin-top: 5px;
}

.todo-footer label {
  display: inline-block;
  margin-right: 20px;
  cursor: pointer;
}

.todo-footer label input {
  position: relative;
  top: -1px;
  vertical-align: middle;
  margin-right: 5px;
}

.todo-footer button {
  float: right;
  margin-top: 5px;
}
</style>
